Control systems frequently utilize a closed-loop architecture to make adjustments to one or more operating parameters of a plant or device (e.g., an electric motor) being controlled by the system. These adjustments are based on feedback from a sensor or transducer coupled to the plant. An electrical signal generated by the sensor may represent position, voltage, velocity, torque, temperature, or any other appropriate parameter of the plant.
Several closed-loop control methodologies are well-known in the art. These methodologies include on-off control, proportional control, integral control, derivative control, and combinations of methodologies such as proportional-integral (“PI”) control and proportional-integral-derivative (“PID”) control.
With regard to control of electric motors, the speed of a motor may be adjusted by varying the voltage across one or more of its windings. Voltage is often supplied to a motor “open loop,” i.e., without a closed-loop velocity feedback control. The motor voltage may vary in direct proportion to a voltage command signal from a closed-loop control system that is controlling a higher-level system parameter, such as position and velocity of an output element of the plant.
The torque delivered by a motor may be adjusted by varying the amount of current flowing through the motor's windings. A closed-loop current control (“CLCC”) is often used for control of the motor's shaft torque, and also for protection of the motor's windings and any associated power devices used to drive the motor. Protection means may be required to limit motor current under certain conditions, such as start-up, direction reversals and overload. The output of a CLCC is a function of an error term representing the difference of the commanded current and the actual current. The CLCC attempts to reduce the error term to zero about the commanded current value by decreasing or increasing a drive signal coupled to the power devices to achieve a corresponding decrease or increase in motor current.
A motor control system may use more than one control mode to achieve the desired operating characteristics for a particular system. For example, a control system may utilize both an open-loop voltage control mode and a closed-loop current control mode. The output signal of either the voltage mode or the current mode, whichever has the smallest value, is selected to control a pulse width modulator (“PWM”) that is used to systematically turn on and off power devices that connect a power source to the motor's windings.
The CLCC output of the current control mode responds to the error term according to a predetermined transfer function. However, when the system is operating in voltage control mode, the CLCC transfer function output does not control the PWM and thus cannot reduce its error term to zero by increasing or decreasing the motor current. Error-dependent terms for the CLCC thus accumulate, effectively increasing the CLCC transfer function's output to a large value while in voltage mode. If the voltage command signal is increased sufficiently (such as due to a large velocity error term or change in setpoint) so that a control element of the motor control invokes the current mode in accordance with predetermined criteria, the CLCC function exhibits significant overshoot due to a large output current value corresponding to the accumulated error term. Similarly, if a current command value of a closed loop control system is decreased for current limiting in accordance with predetermined criteria, the system may be forced to delay switching from voltage mode to current mode until the CLCC transfer function's output decays from the accumulated error-dependent terms to a value that is safe for the power devices and/or motor.
There is a need to control overshoot of a controlled parameter in a closed loop system when switching between control modes. There is a further need for a way to reduce the response time for a closed loop system when switching between control modes.